#ifndef __GlGameListener_h__
#define __GlGameListener_h__

#include "GlMain.h"

namespace GraphicLibrary
{
	class GlExport GameListener
	{
		public:
			///
			/// Do all initaialization here
			virtual void init();
			/// @return The return value determines if the game has to end or not. If the return value is true than
			/// the application will terminate after the current frame.
			virtual bool tick(const float deltaTime) = 0;
			virtual void mouseDown(const float x, const float y) = 0;
			virtual void mouseUp(const float x, const float y) = 0;
			virtual void mouseMove(const float x, const float y) = 0;
			virtual void keyPressed(const unsigned int key) = 0;
	};
}

#endif // __GlGameListener_h__
